Digital content searching tool

ABSTRACT

Embodiments of the invention may include a method for searching digital content in a data processing system. The method may include providing a set of sample digital resources. Each sample digital resource may be associated with metadata describing its content, including fields having associated metadata values. A user may select at least one sample digital resource from the set. One or more metadata values of the sample digital resource may be displayed to the user. The user may then select at least a portion of the metadata values. A digital resource having one or more metadata values substantially matching the selected metadata value of the sample digital resource may then be retrieved.

BACKGROUND OF THE INVENTION Description of the Related Art

Recent years have seen a proliferation of the use of digital resources,such as digital images. This is mainly due to the widespread diffusionof corresponding acquisition devices, such as stand-alone still camerasor those embedded in mobile telephones, scanners, and the like. Thistrend is further fostered by the increasing availability ofhigh-capacity storage devices, powerful data processing systems, andlarge bandwidth networks which facilitate the storage, processing, andexchange of the digital images.

Content management applications have been developed to help a usermanage digital images. One of the most critical functions of contentmanagement applications is searching capability, which allows access tospecific digital images of interest to perform desired operationsthereon.

Generally, the search is based on the content of metadata, whichdescribes each digital image associated therewith. For this purpose,most known content management applications provide a text-basedinterface that enables the user to enter a desired filtering condition(e.g., in the form of keywords, possibly combined with logic operators).This filtering condition may then be used to generate a query. Executionof the query may retrieve all the digital images with metadata matchingthe filtering condition.

SUMMARY OF THE INVENTION

Embodiments of the invention have been developed to provide a tool tofacilitate searching digital resources.

Some embodiments of the invention may include a method for searchingdigital content in a data processing system. The method may includeproviding a set of sample digital resources. Each sample digitalresource may be associated with metadata describing its content,including fields having associated metadata values. A user may select atleast one sample digital resource from the set. One or more metadatavalues of the sample digital resource may be displayed to the user. Theuser may then select at least a portion of the metadata values. Adigital resource having one or more metadata values substantiallymatching the selected metadata value of the sample digital resource maythen be retrieved.

A corresponding system and computer program product are also disclosedand claimed herein.

BRIEF DESCRIPTION OF THE DRAWINGS

In order that the advantages of the disclosure will be readilyunderstood, a more particular description of embodiments of theinvention briefly described above will be rendered by reference tospecific embodiments illustrated in the appended drawings. Understandingthat these drawings depict only typical embodiments of the invention andare not therefore to be considered limiting of its scope, embodiments ofthe invention will be described and explained with additionalspecificity and detail through use of the accompanying drawings, inwhich:

FIG. 1 is a pictorial representation of a data processing system inwhich embodiments of the invention may be applied;

FIGS. 2A-2E show different examples of application of the solutionaccording to embodiments of the invention; and

FIG. 3 is a collaboration diagram representing the roles of differentsoftware components that may be used to implement embodiments of theinvention.

DETAILED DESCRIPTION OF THE INVENTION

It will be readily understood that the components of embodiments of thepresent invention, as generally described and illustrated in the Figuresherein, may be arranged and designed in a wide variety of differentconfigurations. Thus, the following more detailed description of theembodiments of the systems and methods of the present invention, asrepresented in the Figures, is not intended to limit the scope of thedisclosure, as claimed, but is merely representative of selectedembodiments of the invention.

Reference throughout this specification to “one embodiment,” “anembodiment,” or similar language means that a particular feature,structure, or characteristic described in connection with the embodimentmay be included in at least one embodiment of the present invention.Thus, appearances of the phrases “in one embodiment” or “in anembodiment” in various places throughout this specification are notnecessarily all referring to the same embodiment.

Furthermore, the described features, structures, or characteristics maybe combined in any suitable manner in one or more embodiments. Oneskilled in the relevant art will recognize, however, that embodiments ofthe invention can be practiced without one or more of the specificdetails, or with other methods, components, etc. In other instances,well-known structures, or operations are not shown or described indetail to avoid obscuring aspects of the disclosure.

The illustrated embodiments of the invention will be best understood byreference to the drawings, wherein like parts are designated by likenumerals throughout. The following description is intended only by wayof example, and simply illustrates certain selected embodiments of theinvention that are consistent with the disclosure as claimed herein.

With reference now to FIG. 1, a computer 100 such as a personal computer(“PC”) is illustrated. The computer 100 may include a central unit 105which houses the electronic circuits controlling its operation.Typically, these electronic circuits may include a microprocessor, aworking memory, drives for input/output units, a network adapter, andthe like. The computer 100 may also be provided with a hard disk, and adrive 110 for reading CD-ROMs and/or DVD-ROMs 115. A monitor 120 may beused to display images on a screen 125. Operation of the computer 100may be controlled by means of a keyboard 130 and a mouse 135, which maybe connected to the central unit 105 in the conventional manner.

Referring now to FIG. 2A, the above-described computer 100 maybe used tomanage (i.e., acquire, store, and retrieve) digital content by, forexample, interacting with a remote server through a network connection.Digital content or resources may consist of an object, such as a file,that can be accessed individually. One example of a digital resource mayinclude a digital image formed by a bitmap of pixel values.

Each image may be associated with metadata describing it. The metadatamay be stored in the same file as the image, or may be stored in aseparate database and linked to the image. Metadata of all the availableimages may be loaded into a common database to facilitate their search.

Metadata commonly includes a set of key/value pairs. Each key mayrepresent a metadata type defining a field. The field may admit a singlevalue or multiple values, referred to as tags. For example, single-valuefields may be used to provide the title, author, or date, whilemulti-value fields may be used to provide attributes in the form ofkeywords, such as color, person, animal, object, place, and the like.

To access specific images of interest, users generally must search amongall available images. Embodiments of the present invention, on the otherhand, may provide a set of one or more images to be used as samples. Inone embodiment, for example, the sample images may include imagesresulting from a previous search. The user may select one or morevalues, or a portion thereof, of the sample images (e.g., bymanipulating corresponding graphical objects). These values may definethe characteristics of the desired images. The images of interest maythen be retrieved according to the selected values (e.g., by generatingand executing a corresponding query).

Embodiments of the present invention may be intuitive to allowperforming complex searches in a simple way. Such techniques may also bevery flexible. For example, in some embodiments, a user may search forimages similar to the sample images in only one or more specificaspects, or combination thereof.

Embodiments of the invention may be generally applicable such thatimages with a complex metadata structure may be searched, even when eachfield may include long values or multiple values. For example, afree-text description may require long values, while attributedescriptions may require multiple values that often reach hundreds ofunits.

Searching digital content as provided herein may be very fast, since thevalues of the fields of interest may be selected on the fly. Thisadvantage of embodiments of the invention may be particularly evidentwhen the search is based on multiple values of the fields, since all ofthe values can be directly selected at the same time.

In sum, embodiments of the invention provide a new navigation paradigmbased on content-driven dynamic links among digital images. Indeed,embodiments of the invention may enable a user to move through allimages by refining filtering criteria during the search. This may enabledynamic discovery of relationships between images, so as to followdynamic paths based on the actual needs at the moment.

In an embodiment of the invention, as shown in the figure, the computer100 may be provided with a Graphical User Interface (“GUI”) thatconfigures the screen of the monitor like a desktop. Particularly, awindow may define a browser 200 for searching the desired images andnavigating through them.

The browser 200 may include a frame that may be used as a workpad 205.The workpad 205 may list sample images 210 that have been retrieved by aprevious search. In some embodiments, the list may be scrollable ifadditional space is needed. Generally, each sample image 210 may berepresented by a thumbnail, thereby enabling a user to preview andidentify the image 210. The user may select one of the sample images 210as a working sample image 210 w (highlighted in the figure) by clickingover it with the mouse, for example.

The metadata of the working sample image 210 w, or at least the valuesof its most relevant fields, may be displayed in another frame defininga viewer 215. Particularly, for each field, the viewer 215 may includeits key (i.e., the name of the metadata type) and its value(s).

As shown in the figure, the metadata of the working sample image 210 wmay include a field “ID” for its unique identifier (value “MyID”). Asshown, a single-value field “Field1” may include a value “MyField1,”while another single-value field “Field2” may include a value“MyField2.” Similarly, a multi-value field “Field3” may include threevalues “MyField3a,” “MyField3b,” and “MyField3c,” and a lastsingle-value field “Field4” may include a value “MyField4” The field“Field1” may specify, for example, an author of the working sample image210 w, such as “MyField1=Smith.” The field “Field2” may specify its year(such as “MyField2=2007”), the field “Field3” may specify differentproperties by means of keywords (such as “MyField3=Italy, Sunset,Spring” for the representation of a sunset at spring in Italy), and thefield “Field4” may specify an owner of the corresponding copyright (suchas “MyField4=IBM Corporation”).

One or more fields may be used in the search. These fields, referred toas draggable fields, may be user-configurable. Each draggable field maybe associated with a graphical object for its selection, as described inmore detail below.

In one embodiment, for example, a cloud with a single stylized page maybe displayed on the left of each draggable single-value field (i.e., thefields “Field2” and “Field4”), whereas a similar cloud with multiplestylized pages may be displayed on the left of each draggablemulti-value field (i.e., the field “Field3”). For each draggablemulti-value field, a smaller cloud with a stylized page may be displayedon the left of each value thereof (i.e., “MyField3a,” “MyField3b,” and“MyField3c”). A simple cloud may also be provided at the left of thefield for the identifier of the working sample image 210 w (i.e., thefield “ID”).

In some embodiments, the browser 200 may include another frame that maybe used as an explorer 220. The explorer 220 may show a selection widget225, depicted as a magnifier icon in the present example), which may beused to select the values of the fields used to perform a search ofavailable images. The explorer 220 may be provided with a renderer 230to display a query corresponding to the search in progress. A clearbutton 235 c may be used to cancel the search by removing all theselected values of the selected fields, while a button 235 s may be usedto submit the query for execution.

To perform a new search, the user may select one or more clouds in theviewer 215 representing the items of interest. Particularly, the usermay select a single cloud by clicking over it with the mouse. The usermay select additional clouds at the same time by keeping a CTRL keypressed, for example. The user may then drag the selected cloud(s)towards the selection widget 225 by keeping a left button of the mousepressed, for example, and drop them over it by releasing the button. Inresponse, a query corresponding to the selected clouds may beautomatically generated, as described in more detail below, anddisplayed in the renderer 230. The operation may be repeated to addfurther clouds to the selection widget 225.

In selected embodiments, it may be possible to select another sampleimage 210 in the workpad 205 as a new working sample image. Theabove-described process may then be repeated. Once the desired query hasbeen obtained, the user may execute the search by clicking on the searchbutton 235 s with the mouse, for example. Execution of the query mayreturn a new list of images (if any), which may be displayed in theworkpad 205, thereby defining a new set of sample images 210. The searchmay be refined by selecting one or more values of the fields of the newsample images 210 to navigate through all available images until thedesired result is obtained.

In another embodiment, the user may select the cloud for a value of amulti-value field. In this case, a query may be generated having afiltering condition specifying that the selected field contains theselected value. As shown in the figure, the user may select the cloudfor the value “MyField3b” of the field “Field3.” In some embodiments,the user may make this selection by dragging the cloud towards theselection widget 225, as indicated by the arrow. The query“SELECT*WHERE(Field3 CONTAINS MyField3b)” may then be generated anddisplayed in the renderer 230.

For example, all images with a sunset (“Field3=Sunset”) may be retrievedby selecting a corresponding value in a sample image relating to thesame subject. Likewise, the cloud for a single-value field may bedragged to the selection widget 225 to select its value, with thefiltering condition specifying that the selected field is equal to theselected value. Searches relating to any individual value, even ofmulti-value fields, may thus be performed both simply and immediately.

Referring now to FIG. 2B, in another embodiment, a user may select thecloud for a multi-value field. In some embodiments, all values of thisfield may be selected automatically. A corresponding filtering conditionmay be added to the query, by combining the selected values of theselected field in logic OR.

As shown in the figure, the user may select the cloud for the field“Field3,” including values “MyField3a,” “MyField3b,” and “MyField3c.”The query “SELECT*WHERE(Field3 CONTAINS (MyField3a OR MyField3b ORMyField3c))” may then be generated and displayed in the renderer 230.For example, all images relating to Italy (“Field3=Italy”), or tosunsets (“Field3=Sunset”), or to spring (“Field3=Spring”), may beretrieved by selecting a corresponding field with these values in asample image relating to the same subject. This feature enablesselection of all values of multi-value fields in a single operation(i.e., without having to select them individually). Regardless ofwhether the values of the multi-value fields are selected together orindividually, a search may be directed individually to the values of anydesired multi-value fields.

With reference now to FIG. 2C, the user may refine the search byselecting a cloud for another field. As previously discussed, individualvalues or all values of a particular field may be selected for thispurpose. A filtering condition may be added to the query by combining itwith the preceding query in logic AND.

As shown, the user may select the cloud for the single-value field“Field2” (value “MyField2”). The query in the renderer 230 may be“SELECT*WHERE((Field3 CONTAINS (MyField3a OR MyField3b OR MyField3c))AND (Field2 IS MyField2”)). This operation may restrict the result ofthe search (e.g., the images relating to Italy or sunsets or spring inthe previous example) to only images taken in 2007 (“MyField2=2007”). Asa result, very complex searches may be performed even by persons with notechnical expertise.

Referring now to FIG. 2D, the user may select only a portion of a valuefor a single-value or a multi-value field. For example, the portion ofinterest in the field may be selected with the mouse, and then draggedtowards the selection widget 225. A filtering condition may be added tothe query, specifying that the selected field contains the selectedportion of the value.

As shown, the user may select the portion “IBM” for the single-valuefield “Field4” (value “MyField4=IBM Corporation”. The query in therenderer 230 may then become “SELECT*WHERE((Field3 CONTAINS (MyField3aOR MyField3b OR MyField3c)) AND (Field2 IS MyField2”) AND (Field4CONTAINS “IBM”)). This may restrict the result of the previous search(i.e., the images relating to Italy or sunsets or spring taken in 2007)to only those images owned by IBM. This feature may be very useful whenspecific expressions are to be searched in very long values, such as forfree-text descriptions.

Referring now to FIG. 2E, the user may further select the cloud for thewhole working sample image 210 w. In some embodiments, all values of thedraggable fields of the working sample image 210 w may be automaticallyselected. A query may then be generated with a corresponding filteringcondition. Particularly, the filtering conditions for each multi-valuefield may be combined in logic OR, and the filtering conditions for thevarious single-value or multi-value fields may be combined in logic AND.

As shown, this process may be equivalent to selecting the cloud for thefield “Field2” (value “MyField2”), the cloud for the field “Field3”(values “MyField3a,” “MyField3b,” and “MyField3c”), and the cloud forthe field “Field4” (value “MyField4”). The query “SELECT*WHERE((Field2IS MyField2) AND (Field3 CONTAINS (MyField3a OR MyField3b OR MyField3b))AND (Field4 IS MyField4))” may then be generated and displayed in therenderer 230. This additional feature may provide a shortcut thatenables searches to be performed with a single operation.

Referring now to FIG. 3, various software components 300 may be used toimplement embodiments of the invention. Information, such as programsand data, may be stored on a computer 100 and loaded at least partiallyinto its working memory when the programs are running, together with anoperating system and other application programs not shown in the figure.The programs may be initially installed onto the hard disk from DVD-ROM,for example. The figure depicts the static structure of the system bymeans of the corresponding components, as well as its dynamic behavior,by means of a series of exchanged messages. Each message may represent acorresponding action, denoted with sequence numbers preceded by thesymbol “A.”

In detail, a client interface 305 may implement a client side of acontent management application, such as the above-mentioned NICA, whichserver side offers a corresponding service over a network to any clientaccessing it. A cache 310 may temporarily store the current sampleimages. The client interface 305 may access the cache 310 to display athumbnail of the sample images in the workpad of the browser (action“A1.Display”).

The user may select the working sample image among those displayed inthe workpad by, for example, clicking over it with the mouse. Inresponse, the client interface 305 may retrieve the metadata of theworking sample image from the cache 310, and display it in the viewer(action “A2.Select”). The user may then drag any desired cloud for oneor more values, fields, or the whole working sample image, or anydesired portion of the same, towards the selection widget of theexplorer. The selected values of the selected fields may then be addedto a table 315 (action “A3.Drag”).

An analyzer 320 may access the table 315. When the content of the table315 changes, the analyzer 320 may generate a query with a filteringcondition corresponding to the selected values. Specifically, thefiltering conditions for each multi-value field may be combined in logicOR, and the filtering conditions for the various fields may be combinedin logic AND (action “A4.Combine”). The query may then be displayed inthe renderer of the explorer (“A5.Display”).

Upon selection of the search button, the analyzer 320 may submit thequery for execution to an engine 325 (action “A6.Exec”). The engine 325may post a corresponding request to a server (not shown) of the contentmanagement application (action “A7.Request”). The server may thenprocess the request and return a corresponding result to the engine 325(action “A8.Return”). The result may include, for example, a list of theimages matching the desired filtering criteria. The engine 325 may thenreplace the content of the cache with the images so obtained, so as todefine a new set of sample images (action “A9.Replace”).

Naturally, in order to satisfy local and specific requirements, a personskilled in the art may apply to the embodiments described above manylogical and/or physical modifications and alterations. Morespecifically, although the present invention has been described with acertain degree of particularity with reference to the Figures, it shouldbe understood that various omissions, substitutions and changes in theform and details, as well as other embodiments, are possible.

Particularly, the proposed embodiments may be practiced without thespecific details (such as the numerical examples) set forth in thepreceding description to provide a more thorough understanding thereof.Conversely, well-known features may have been omitted or simplified inorder not to obscure the description with unnecessary particulars.Moreover, it is expressly intended that specific elements and/or methodsteps described in connection with any disclosed embodiment of theinvention may be incorporated in any other embodiment as a matter ofgeneral design choice.

Embodiments of the present invention lend themselves to be implementedwith an equivalent method by using similar steps, removing somenon-essential steps, or adding further optional steps. Further, thesteps may be performed in a different order, concurrently, or in aninterleaved way, in whole or in part.

Although reference has been made to digital images in the precedingdescription, this is not to be interpreted as limiting in any way.Indeed, embodiments of the invention may also be applied to search videoclips, audio files, standard files, or more generally, any other digitalcontents. Likewise, metadata may be provided in any equivalent format,and may be used to store any other information relating to thecorresponding digital content (such as its size, gender, and the like).

It is also possible to provide the sample images in a different way. Inone embodiment, for example, sample images may be provided by saving alink to commonly accessed sample images. A simplified embodiment mayonly support the selection of a single cloud at a time. In otherembodiments, it may be possible to have the metadata of multiple workingsample images displayed together in the viewer to allow selection ofclouds relating to different sample images at the same time. Naturally,the images corresponding to the selected values of the selected fieldsmay be retrieved with any equivalent technique, such as by accessing alocal database, by identifying them in a catalogue, and the like.

Nothing prevents implementing embodiments of the invention with adifferent user interface. For example, the items available to beselected may be represented with equivalent icons, or they may beselected in another way, such as by simply double-clicking over themwithout utilizing a selection widget. In other embodiments, the selectedclouds may be stacked in a tower to enable one or more selected cloudsto be removed, the query may not be displayed, or the like.

Each sample image may have any number of draggable fields. The cloudassociated with each draggable multi-value field, provided to enableselection of all associated values automatically, may not be strictlynecessary, as the same result may be achieved by selecting themindividually. Further, selection of all the values of all draggablefields of the working sample image may be achieved directly by draggingthe corresponding thumbnail towards the selection widget. Thisadditional feature may be omitted, however, as the user may directlyselect the desired values.

Selection of portions of values may be enabled at the level of words orexpressions. Selection of entire values is also contemplated.

A more sophisticated embodiment of the invention may provide a selectionwidget for defining complex logical relations among the selected values.For example, in a tower created for the selection of the clouds, it maybe possible to combine the clouds in the tower in logic AND, to groupmore clouds in the same position to combine them in logic OR, or moregenerally to support any other logic operator (such as NOT, XOR, NAND,and the like).

Nothing prevents using the result of each search in any other way. Forexample, it may be possible to have one dedicated frame for the sampleimages and one dedicated frame for the result of the search. In such acase, sample images may be changed directly by the user by adding one ormore of the retrieved images, for example.

Naturally, the above-described values of the fields in the metadata aremerely illustrative. Indeed, embodiments of the invention may be appliedto any type of values, including single values, multiple values, freeformat values, values with predefined constraints, and the like.

Embodiments of the invention may be implemented as a stand-alone module,as a plug-in for the content management application, or even directlyembedded in the content management application. It would be readilyapparent that it is also possible to deploy the same solution as aservice that is accessed through a network (such as in the Internet).Similar considerations apply if the program (which may be used toimplement each embodiment of the invention) is structured in a differentway, or if additional modules or functions are provided; likewise, thememory structures may be of other types, or may be replaced withequivalent entities (not necessarily consisting of physical storagemedia). In any case, the program may take any form suitable to be usedby any data processing system or in connection therewith (for example,within a virtual machine); particularly, the program may be in the formof external or resident software, firmware, or microcode (either inobject code or in source code—for example, to be compiled orinterpreted). Moreover, it is possible to provide the program on anycomputer-usable medium; the medium can be any element suitable tocontain, store, communicate, propagate, or transfer the program. Forexample, the medium may be of the electronic, magnetic, optical,electromagnetic, infrared, or semiconductor type; examples of suchmedium are fixed disks (where the program can be pre-loaded), removabledisks, tapes, cards, wires, fibers, wireless connections, networks,broadcast waves, and the like. In any case, the solution according to anembodiment of the present invention lends itself to be implemented witha hardware structure (for example, integrated in a chip of semiconductormaterial), or with a combination of software and hardware.

The proposed method may also be carried out on a system having adifferent architecture or including equivalent units (for example, basedon a local network). However, its implementation on a stand-alonecomputer is not excluded. Each computer may have another structure ormay include similar elements (such as cache memories temporarily storingthe programs or parts thereof); in any case, it is possible to replacethe computer with any code execution entity (such as a PDA, a mobilephone, and the like), or with a combination thereof (such as amulti-tier architecture, a grid computing infrastructure, and the like).

1. A method for searching digital content in a data processing system,the method comprising: providing a set of sample digital resources, eachsample digital resource being associated with metadata describing itscontent, the metadata including metadata fields having associatedmetadata values; enabling a user to select at least one sample digitalresource from the set; displaying to the user at least one metadatavalue of the at least one sample digital resource; enabling the user toselect at least a portion of the at least one metadata value; andretrieving a digital resource having at least one metadata valuesubstantially matching the selected at least one metadata value of thesample digital resource.
 2. The method of claim 1, wherein enabling theuser to select at least a portion of the at least one metadata valuefurther comprises: displaying to the user a graphical representation ofthe at least one metadata value of the at least one sample digitalresource; and enabling the user to drag the graphical representation toa selection area to select the at least one metadata value.
 3. Themethod of claim 1, wherein enabling the user to select at least aportion of the at least one metadata value further comprises: displayingto the user a graphical representation of each of the metadata fields ofthe at least one sample digital resource; and enabling the user to dragthe graphical representation to a selection area to select all metadatavalues associated with the metadata field.
 4. The method of claim 2,wherein enabling the user to select at least a portion of the at leastone metadata value further comprises: displaying a graphicalrepresentation of the at least one sample digital resource, and enablingthe user to drag the graphical representation to a selection area toselect all the metadata values associated with the at least one selectedsample digital content.
 5. The method of claim 2, wherein enabling theuser to select at least a portion of the at least one metadata valuefurther comprises enabling the user to drag at least a portion of the atleast one metadata value to the selection area to select the portion. 6.The method of claim 1, wherein enabling the user to select at least aportion of the at least one metadata value further comprises enablingthe user to select a plurality of metadata values of the sample digitalresource.
 7. The method of claim 6, wherein retrieving a digitalresource further comprises generating a query for retrieving the digitalresource, wherein the query comprises a filtering condition based on theplurality of metadata values in logic OR.
 8. The method of claim 1,wherein enabling the user to select at least a portion of the at leastone metadata value further comprises selecting at least one metadatavalue of a plurality of metadata fields of the sample digital resource.9. The method of claim 8, wherein retrieving a digital resource furthercomprises generating a query for retrieving the digital resource,wherein the query comprises a filtering condition based on the pluralityof metadata fields in logic AND.
 10. The method of claim 1, furthercomprising designating the retrieved digital resource as a sampledigital resource provided in a next set of sample digital resources. 11.The method of claim 1, wherein at least one of the metadata fields isassociated with a plurality of metadata values.
 12. A computer programproduct for searching digital content in a data processing system, thecomputer program product comprising: a computer-usable medium havingcomputer-usable program code embodied therein, the computer-usableprogram code comprising: computer-usable program code for providing aset of sample digital resources, each sample digital resource beingassociated with metadata describing its content, the metadata includingfields having associated metadata values; computer-usable program codefor enabling a user to select at least one sample digital resource fromthe set; computer-usable program code for displaying to the user atleast one metadata value of the at least one sample digital resource;computer-usable program code for enabling the user to select at least aportion of the at least one metadata value; and computer-usable programcode for retrieving a digital resource having at least one metadatavalue substantially matching the selected at least one metadata value ofthe sample digital resource.
 13. A system for searching digital contentin a data processing system, the system comprising: a workpad to providea set of sample digital resources and enable a user to select at leastone sample digital resource from the set, each sample digital resourcebeing associated with metadata describing its content, the metadataincluding fields having associated metadata values; a viewer to displayto the user at least one metadata value of the at least one sampledigital resource and enable the user to select at least a portion of theat least one metadata value; and an explorer to retrieve a digitalresource having at least one metadata value substantially matching theselected at least one metadata value of the sample digital resource.